1. Technical Field
This invention relates to image processing techniques and, more particularly, to techniques for matching patterns using area correlators.
2. Discussion
Area correlation is an important signal processing function in many image processors. Applications include trackers, pattern recognizers, scene stabilizers, and sensor line of sight (LOS) alignment. Traditionally area correlation has been implemented using either greylevel product correlation or bilevel correlation. These two techniques represent opposite extremes in the performance/complexity tradeoff.
The product correlator performs the matching function by multiplying each pixel in a reference image with a corresponding pixel in a live image and accumulating the sum of the products. In order to keep up with the sensor imaging rate (typically 60 Hz), parallel processing in hardware is usually necessary. This results in high cost, high power consumption and bulky hardware which is unsuitable for applications where the available volume is small. In addition, the large amount of multiplications also tends to limit the search range of the correlator. This means the correlator is unable to perform matching when the LOS offset between the sensors is large. This limitation makes it unsuitable for boresight alignment applications.
The bilevel correlator performs the matching function by comparing the polarity of the spatial gradient between the reference image and the live image. A gradient operator is applied to the raw greylevel image and each pixel is replaced by the polarity of its spatial gradient. The match function is computed by accumulating the number of pixel pairs in the two images with polarity coincidence. This process effectively performs the "multiplies" in the product correlator with a logical "exclusive nor" operation and results in a simplification of the hardware with a corresponding improvement in throughput. Thus, bilevel correlators can be implemented in relatively low cost and compact hardware that is suitable for applications where the available volume is small. The increased throughput also allows for increased search range which makes the correlator applicable for sensor alignment applications.
The problem with the bilevel correlator is that all pixels in the reference image are treated equally. In those pixels where the scene content is relatively uniform, the amplitude of the gradient is small and the polarity of the gradient often is dominated by noise. Statistically, the cross correlation of noisy pixels can add or detract from the correlation function with equal probability. Thus the inclusion of noisy pixels does not add to the mean peak of the correlation function but increases its variance. This effectively reduces the signal to noise ratio at the output of the correlator. In bland scenes where most of the reference image is fairly uniform, the noisy pixels can overwhelm the number of signal-occupied pixels. In this environment the bilevel correlator does not perform well.